package com.he.DesignPatterns.visit;

import java.util.ArrayList;
import java.util.List;

/**
 * @description: 对象结构类
 * @Author: HCL
 * @Date: 2024/10/11 16:43
 */
public class Home {
    //声明结合，用来存储元素对象
    private List<Animal> animalList = new ArrayList<>();

    //添加元素到集合
    public void add(Animal animal) {
        animalList.add(animal);
    }

    public void action(Person person) {
        //遍历集合，获取每一个元素，让访问者都进行访问
        animalList.forEach(
                o -> o.accept(person)
        );
    }
}
